草庐IT

Android Canvas.drawText

全部标签

android - Canvas.drawText(...) 不打印换行符

我试图在我创建的表面View上写一些文本。如果title为false,并且文本中没有添加换行符,它工作正常。但是,如果我添加标题并因此添加换行符,换行符不会按预期打印,而是打印此符号[]。有什么提示吗?@OverridepublicvoiddrawObject(){Stringtext="";if(title){text=getGameBoard().getGame().getForeignProfile().getName()+"\n";}text=text+getScoreAsString();getGameBoard().getCanvas().drawText(text,0,t

Nexus 7 上的 Android 4.2 : canvas. drawText() 无法正常工作

我的应用程序在GooglePlay上发布并且显然在除4.0以上版本以外的所有Android版本上都运行良好。这是我的Android4.0HTC手机的屏幕截图:这就是我在Nexus7、Android4.2.1上得到的结果(模拟器中的行为相同):我看到使用canvas.drawText()绘制的每个文本都有相同的行为用来绘制文字的Paint是:paint=newPaint();paint.setAntiAlias(true);paint.setColor(color);//somecolorpaint.setTextSize(size);//somesizepaint.setTypefac

android - Canvas.drawText() 是如何真正绘制文本的?

在此方法文档中写道:xThex-coordinateoforiginforwheretodrawthetextyThey-coordinateoforiginforwheretodrawthetext但它没有说明此文本的绘制方向。我知道文本是从原点向上绘制的,但是当我给出以下参数时,我的文本被剪切了:canvas.drawText(displayText,0,canvas.getHeight(),textPaint);此外,假设我使用的是Align.LEFT(意味着文本绘制在x,y原点的右侧)那么正确的参数应该是什么(假设我不想使用固定数字)? 最佳答案

android - 为什么我对 Canvas.drawText() 的调用不起作用

大家好:我正在编写一个继承自TextView的类,并覆盖其onDraw()方法,但在该方法中,我对canvas.drawText()的调用似乎没有工作,代码就像下面这样:protectedvoidonDraw(Canvascanvas){//super.onDraw(canvas);Paintpaint=newPaint();paint.setColor(android.graphics.Color.WHITE);paint.setTextSize(20);Stringtext="hello";canvas.drawText(text,0,0,paint);}

c++ - DrawText VS TextOut Win32

我发现以前使用过这两个功能,但我不太明白它们之间的区别。嗯,我知道DrawText需要一个格式化矩形,并且可以做一些文本格式化,而textout只是起始坐标,还有其他的区别吗? 最佳答案 DrawText它将文本字符串绘制到以逻辑坐标指定的矩形区域中。它提供了格式化多行文本的便捷方式。主要用于断字段落格式、扩展标签等。TextOut这是一个简单易用的文字绘图功能。它使用当前选定的文本属性在指定位置绘制一个字符串。正文要绘制的字符串不需要以零结尾。另外,看看ExtTextOut和DrawTextEx

c++ - DrawText VS TextOut Win32

我发现以前使用过这两个功能,但我不太明白它们之间的区别。嗯,我知道DrawText需要一个格式化矩形,并且可以做一些文本格式化,而textout只是起始坐标,还有其他的区别吗? 最佳答案 DrawText它将文本字符串绘制到以逻辑坐标指定的矩形区域中。它提供了格式化多行文本的便捷方式。主要用于断字段落格式、扩展标签等。TextOut这是一个简单易用的文字绘图功能。它使用当前选定的文本属性在指定位置绘制一个字符串。正文要绘制的字符串不需要以零结尾。另外,看看ExtTextOut和DrawTextEx

java - android canvas drawText从宽度设置字体大小?

我想使用.drawtext在一定宽度的canvas上绘制文本例如,无论输入文本是什么,文本的宽度都应始终为400px。如果输入文本较长,则会减小字体大小,如果输入文本较短,则会相应增加字体大小。 最佳答案 这里有一个更有效的方法:/***SetsthetextsizeforaPaintobjectsoagivenstringoftextwillbea*givenwidth.**@parampaint*thePainttosetthetextsizefor*@paramdesiredWidth*thedesiredwidth*@par

java - android canvas drawText从宽度设置字体大小?

我想使用.drawtext在一定宽度的canvas上绘制文本例如,无论输入文本是什么,文本的宽度都应始终为400px。如果输入文本较长,则会减小字体大小,如果输入文本较短,则会相应增加字体大小。 最佳答案 这里有一个更有效的方法:/***SetsthetextsizeforaPaintobjectsoagivenstringoftextwillbea*givenwidth.**@parampaint*thePainttosetthetextsizefor*@paramdesiredWidth*thedesiredwidth*@par

android - 使用 Canvas.drawText() 定位文本

我是Android开发的新手,现在正在尝试制作一个简单的应用程序。用户可以选择图像并向其添加文本。用户可以选择不同的字体和文本大小。对于预览,我在RelativeLayout中使用ImageView,创建的文本将从代码添加到布局(使用TextView)。当用户按下保存按钮时,图像将与文本一起保存。Canvas.drawText中的所有问题。我找不到一个好的公式来计算正确的X和Y。绘制文本后总是在错误的位置。Y位置总是因字体而异,X也有一个小缩进。这是屏幕截图(首先是TextView,下面是图片文字):Screenshot这是我查找位置的代码:publicfloat[]getPositi

Lollipop 上的Android drawText缺少字符

我有一个显示比例的Android应用程序,它在5.0(Lollipop)之前的所有版本上都运行良好,其中使用drawText方法绘制的所有文本都以某种方式被截断。仅显示两个字母文本的第二个字母。即第一个标记只是'0'字母但不显示。对于第二个2个标记(40和80),仅显示0,对于其余的140...250,不显示任何文本。文字大小似乎还可以,但并未显示所有字符。图像按[0..1,0..1]平方缩放。我在drawText上找到并尝试了很多帖子,但没有一个有帮助。(View.setLayerType()所有组合,setLinearText(true),Paint.Style.FILL...)p